"""
@Author : 合肥一元数智教育科技有限公司
@Date :  2025/2/26 10:06
@Description :   如何访问类中的函数

1. 对象名.函数名()
2. 类名.函数名(对象)

函数分类
    1.  实例函数(普通函数) 函数会有一个默认参数self  当前实例
         需要对实例中的属性操作时，一般定义实例函数
    2.  类函数   函数属于类本身   默认参数为类对象   cls
        需要对类中的属性操作时，一般定义类函数  cls
    3.  静态函数  静态函数不依赖于 对象和类
        编写一些不依赖于实例和类的逻辑时  定义静态函数  一般多见于工具类
"""


class Aoo:

    # 实例函数  参数self默认
    def instance_method(self):
        print('instance_method invoke ...')

    # 类函数 cls 默认传入类对象   @classmethod 注解
    @classmethod
    def class_method(cls):
        print('class_method invoke ...')

    # 静态函数   不依赖于对象和类
    @staticmethod
    def static_method():
        print('static_method invoke ...')


# 对象访问函数  推荐
aoo = Aoo()
aoo.instance_method()   # 推荐
# 类名访问函数
Aoo.instance_method(aoo)

print('*'*30)

# 访问类函数
aoo.class_method()
Aoo.class_method()  # 推荐

# 访问静态函数
aoo.static_method()
Aoo.static_method()   # 推荐












